/*
 * Copyright (c) 2019-2020, https://api.iot.10086.cn/(https://gitee.com/cmcc-iot-api/iot-card-open-application/).
 */
package cn.iot.card.open.sim.dto.siminfo;

import cn.iot.card.open.constants.Constants;

/**
 * GPRS（PCC策略）限速，请求接收
 *
 * @author zhanlele
 * @date 20200312 17:17:29
 * @modify 20200312 zhanlele v1.1.2 创建
 * @since v1.1.2
 */
public class GprsPccLimitSpeedDTO extends GprsLimitSpeedDTO {
    /**
     * pccCode pcc码
     */
    private String pccCode;

    public String getPccCode() {
        return pccCode;
    }

    public void setPccCode(String pccCode) {
        this.pccCode = pccCode;
    }

    @Override
    public String toString() {
        StringBuilder stringBuilder = new StringBuilder();
        switch (this.getCardType()) {
            case Constants.REQUEST_PARAM_MSISDN:
                stringBuilder.append("所查询的物联卡号码(MSISDN):").append(this.getCardNum()).append(",");
                break;
            case Constants.REQUEST_PARAM_ICCID:
                stringBuilder.append("集成电路卡识别码(ICCID):").append(this.getCardNum()).append(",");
                break;
            case Constants.REQUEST_PARAM_IMSI:
                stringBuilder.append("国际移动用户识别码(IMSI):").append(this.getCardNum()).append(",");
                break;
        }
        stringBuilder.append("apn名称:").append(this.getApnName()).append(",");
        stringBuilder.append("应用层级code:").append(pccCode).append(",");
        switch (this.getServiceUsageState()) {
            case "1":
                stringBuilder.append("降速档位:").append("速率恢复");
                break;
            case "91":
                stringBuilder.append("降速档位:").append("APN-AMBR=2Mbps（月初不自动恢复）");
                break;
            case "92":
                stringBuilder.append("降速档位:").append("APN-AMBR=1Mbps（月初不自动恢复");
                break;
            case "93":
                stringBuilder.append("降速档位:").append("APN-AMBR=512Kbps（月初不自动恢复)");
                break;
            case "94":
                stringBuilder.append("降速档位:").append("APN-AMBR=128Kbps（月初不自动恢复)");
                break;
            case "95":
                stringBuilder.append("降速档位:").append("APN-AMBR=2Mbps（月初自动恢复）");
                break;
            case "96":
                stringBuilder.append("降速档位:").append("APN-AMBR=1Mbps（月初自动恢复）");
                break;
            case "97":
                stringBuilder.append("降速档位:").append("APN-AMBR=512Kbps（月初自动恢复）");
                break;
            case "98":
                stringBuilder.append("降速档位:").append("APN-AMBR=128Kbps（月初自动恢复）");
                break;
        }
        return stringBuilder.toString();
    }
}
